iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 6
0
自我挑戰組

我的影像視覺定位學習筆記系列 第 6

day6-四元數前置作業

  • 分享至 

  • xImage
  •  

今天我們來講講四元數的表示法,跟旋轉向量很像,(X,Y,Z)作為其旋轉的軸,θ為旋轉角,則等校的四元數為:
[cos(θ/2), xsin(θ/2), ysin(θ/2), z*sin(θ/2)]

其中cos(θ/2)為四元數的實部w,後面的x*sin(θ/2), y*sin(θ/2), z*sin(θ/2)為四元數的虛部i、j、k
角度的部分跟四元數的實部有關係,而旋轉軸的三個分量則分別跟四元數的ijk有連動。

然而openCV並沒有四元數這種資料型別,所以在此讓我介紹另外一個C++ 線性代數模板函示庫 Eigen
http://eigen.tuxfamily.org/index.php?title=Main_Page
你可以直接從官網下載最新的 released的版本,如果你下載的是3.3.7那麼解壓縮之後應該會得到
eigen-eigen-323c052e1731的資料夾,我們在我們的專案檔設定的include的地方,直接include這個資料夾就完成了。
https://ithelp.ithome.com.tw/upload/images/20190922/2012112708mztb8FJk.png
同樣的讓我們把時間調回day1如果你在cmake的地方有注意到with_eigen的選項之後再編譯opencv的函示庫的時候,你也可以讓eigen負責計算opencv裡面一些線性代數的部分。

而如果你想要更進一步了解四元數的話,
推薦你以下這部影片。
https://www.youtube.com/watch?v=d4EgbgTm0Bg&feature=youtu.be

因為時間的關係,沒有辦法示範eigen四元數的旋轉,我會在明天的時候整理好...........希望


上一篇
day5-旋轉向量
下一篇
day7-四元數旋轉
系列文
我的影像視覺定位學習筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言